"""
list(列表), python 中使用最频繁的数据类型, 在其他语言中通常叫做 数组
专门存储 一串 信息
索引从零开始
语法:
列表名 = [元素1,元素2,元素3,元素4]
"""
list1 = []  # 空列表
list2 = [10, 9, True, '战神']
list3 = list()
print(list2)

# list() 函数也可以类型转换
list4 = list('123456')
print(list4)

# 也可以切片
print(list4[::-1])

# 列表的加法与乘法
print(list2 + list4)
print(list4 * 2)

# 列表的成员运算符
print('1' in list4)
print('1' not in list4)

# 内置函数
# len 输出列表长度
print(len(list4))
# max 输出列表中的最大值
print(max(list4))
# min 输出列表的最小值
print(min(list4))
# sum 求和
sumList = [1, 2, 3, 4]
print(sum(sumList))

# 删除列表
del list4
# print(list4)

# 列表的遍历
for i in list2:
    print(i)

# 利用 enumerate 函数获取列表的索引
for i, v in enumerate(list2):
    print(i, v)

print("*" * 30)

# 列表常用的方法 method  变量名.方法名()
list5 = list('987654321')
print(list5)

# append 列表添加元素
list5.append('0')
print(list5)

# extend 列表添加列表
list5.extend(['0000'])
print(list5)

# insert 指定下标添加指定元素
list5.insert(0, '10')
print(list5)

# pop 根据索引删除元素会返回删除的元素, 相当于出队
print(list5.pop(0))
print(list5)

# remove 删除指定的元素, 如果有多个, 删第一个
print(list5.remove('0000'))
print(list5)

# clear 清空列表
list5.clear()
print(list5)


# sort 列表排序
list6 = list('98475091237')
list6.sort()

list7 = sorted(list6)
print(list7)

# 计算若干个人的平年龄
ages = [10, 20, 35]
sumNum = 0
for i in ages:
    sumNum += i
ageNum = sumNum / len(ages)
print(ageNum)
print("列表中共有 %s 个人, 他们的平均年龄是 %d 岁" % (len(ages), ageNum))


